#include <vector>
struct buildplace;
class Prokop {
  public:
  float3 startposition;
  void Init(TTAICore *Gl,IAICallback *Callback);
  void handlewait();
  bool MoznaGeo(int sektor, float3 cpos);
  bool RobGeo(string name, int uid);
  //bool bbuild(string name,int uid,int spacing); 
  //int sectdist(int currsect,int targetsect);
  bool cmplist(string name,int list=0);
  //int listplace(string name,int list=0);
  //bool canbuild(string name,int uid,int spacing);
  //bool memberOf(int unit,int* list,int howmany);
  string Runitof(int list=0,bool side=false);
  bool order(int cmd,int uid,float3 pos);
  bool tcommand(int cmd,int uid,int target);
  float3 FindGeoSite(const UnitDef*, float3 pos);
  float3 GetDefenseSector(float3 currentpos);
  void gdzieMex (int stSek); // 'stSek' jak startowy sektor
  bool MoznaMex (int sek);
  vector<int> sektory_bazy;
  vector<buildplace> bp;
  int getClosestBp(float3 position);
  TTAICore *G;
  IAICallback *cb;
};
  struct buildplace {
    float3 pos;
    int sector;
    int members;
    bool full;  
  };
